State Generation and Automated Class Testing: a Case Study
نویسندگان
چکیده
The maturity of object-oriented methods has led to the wide availability of container classes: classes that encapsulate classical data structures and algorithms. Container classes are included in the C++ and Java standard libraries, and in many proprietary libraries. The wide availability and use of these classes makes reliability essential, and testing plays a key role in achieving that reliability. The large number of cases necessary for thorough testing of container classes makes automated testing essential. We present a novel approach for automated testing of container classes based on combinatorial algorithms for state generation. We illustrate the approach with one white-box and two black-box test drivers for a class implemented with the red-black tree data structure, used widely in industry and, in particular, in the C++ Standard Template Library. The black-box driver is based on a new algorithm for red-black tree generation. All three drivers are evaluated experimentally, providing quantitative measures of their e ectiveness in terms of block and path coverage. The results clearly show that our approach is a ordable in terms of development cost and execution time, and e ective with respect to coverage achieved. The results also provide insight into the relative advantages of black-box and white-box drivers, and into the di cult problem of infeasible paths.
منابع مشابه
Behavior based Automated Test Case Generation for Object Oriented Systems
An innovative approach of generating test cases from the combination of UML design diagrams has been discussed in this paper. Present work used an approach where petal files of class diagram, sequence diagram and state chart diagram has been used to generate test cases. The test cases thus generated are suitable for static and dynamic testing of system. General Terms Test case generation from U...
متن کاملArchitectural Unit Testing in a Robot Teleoperation Case Study
A formal testing methodology is outlined in this paper, that proves applicable to validation of architectural units in object-oriented models, and its use is illustrated in the context of the design of a robot teleoperation architecture. Automated generation of test cases to validate the functionality of the robot trajectory generation unit showcases the key features of this methodology. A disc...
متن کاملTest Case Generation for Visual Contracts Using AI Planning
In this paper, we propose a novel approach for computing test case preambles using visual contracts and AI Planning. In unit testing, preambles are required for setting the class under test into a controlled state (prestate). The class operation can then be invoked with test inputs. In previous research, we have used model checking for computing preambles. In this paper, we show how preamble co...
متن کاملAutomated Test Case Generation for Industrial Control Applications
The need for increasing flexibility of industrial automation system products leads to the trend of shifting functional behavior from hardware solutions to software components. This trend causes an increasing complexity of software components and the need for comprehensive and automated testing approaches to ensure a required (high) quality level. Nevertheless, key tasks in software testing incl...
متن کاملAn automatic test case generator for evaluating implementation of access control policies
One of the main requirements for providing software security is the enforcement of access control policies which aim to protect resources of the system against unauthorized accesses. Any error in the implementation of such policies may lead to undesirable outcomes. For testing the implementation of access control policies, it is preferred to use automated methods which are faster and more relia...
متن کامل